Amazon EC2 と AWSのコンピューティングサービスの基礎
🎯 学習目標(Learning Objectives)
-
Amazon EC2の利点
-
オンデマンドで仮想サーバーを起動できる
-
柔軟性が高く、迅速に利用開始できる
-
従量課金制でコスト効率が良い
-
-
インスタンスタイプの理解
-
汎用(General Purpose)
-
コンピューティング最適化(Compute Optimized)
-
メモリ最適化(Memory Optimized)
-
ストレージ最適化など
-
-
請求オプションの違い
-
オンデマンドインスタンス:柔軟性重視、短期利用向け
-
リザーブドインスタンス:長期利用でコスト削減
-
スポットインスタンス:安価だが中断の可能性あり
-
-
EC2 Auto Scaling の利点
-
トラフィック量に応じて自動でスケーリング
-
高可用性とコスト効率の両立
-
-
Elastic Load Balancing(ELB)の利点
-
トラフィックを複数インスタンスに自動で分散
-
アプリケーションの安定稼働を支援
-
-
ELB の使用例
-
ウェブサイトへのアクセス分散
-
負荷の高いアプリケーションの処理分散
-
-
SNS と SQS の違い
-
SNS:Pub/Sub モデル。同時に複数の購読者に通知を送信
-
SQS:キュー モデル。メッセージを順番に処理
-
-
他のコンピューティングオプション
-
AWS Lambda(サーバーレス)
-
AWS Fargate(コンテナの管理不要)
-
AWS Elastic Beanstalk(フルマネージド型のアプリ展開)
-
💡重要キーワードまとめ
| 用語 | 説明 |
|---|---|
| EC2 | 仮想サーバー。Elastic Compute Cloud の略 |
| Auto Scaling | インスタンスの自動起動/停止で負荷に対応 |
| ELB | 複数インスタンス間での負荷分散 |
| SNS | メッセージを複数サブスクライバーに送信 |
| SQS | メッセージを順番に処理(非同期キュー) |
- Amazon EC2 のインスタンスタイプと料金オプション
- Amazon EC2 Auto Scaling
- Elastic Load Balancing
- メッセージング、コンテナ、サーバーレスコンピューティング向けの AWS のサービス
🖥️ EC2 インスタンスタイプの分類
🔹 汎用インスタンス(General Purpose)
-
特徴:バランス型(CPU / メモリ / ネットワーク)
-
用途例:Webサーバー、ゲームサーバー、中小規模のDB
🔹 コンピューティング最適化(Compute Optimized)
-
特徴:高性能CPU、計算処理に最適
-
用途例:ゲームエンジン、HPC、バッチ処理
🔹 メモリ最適化(Memory Optimized)
-
特徴:大容量メモリ、高速インメモリ処理
-
用途例:データ分析、インメモリDB、非構造化データ処理
🔹 高速コンピューティング(Accelerated Computing)
-
特徴:GPU/FPGA によるアクセラレーション
-
用途例:機械学習、3Dレンダリング、動画配信
🔹 ストレージ最適化(Storage Optimized)
-
特徴:高IOPS、ローカルストレージ最適化
-
用途例:DWH、分散ファイルシステム、OLTP
💡まとめ
- 選定基準は、CPUかメモリか、ストレージIOか、GPUか、何がボトルネックかを見極めること。
- 必要に応じて垂直スケーリング(インスタンスのサイズ変更)や水平スケーリング(インスタンス数の増減)も可能。
- 使いすぎず、足りなすぎず、適切なタイプ選択がコスト効率とパフォーマンスの鍵。
| インスタンスカテゴリ | 主な特徴 | 代表的なユースケース | たとえ話(コーヒーショップ) |
|---|---|---|---|
| 汎用 | CPU・メモリ・ネットワークのバランスが良い | Webサーバー、ゲームサーバー、中小DBなど | レジ係:バランスよく対応 |
| コンピューティング最適化 | 高性能CPU。演算処理に強い | 高負荷アプリ、ゲームエンジン、バッチ処理 | バリスタ:大量注文を素早く処理 |
| メモリ最適化 | メモリ容量が多く、高速アクセス可能 | 大規模DB、リアルタイム処理 | レジ係:大量メニューの処理を記憶して対応 |
| 高速コンピューティング | GPUやFPGAなどのハードウェアアクセラレーター搭載 | 機械学習、3Dレンダリング、科学技術計算 | ラテアート担当:特殊技能が必要な処理 |
| ストレージ最適化 | 高IOPS性能。ローカル高速スト レージ | OLTP、データウェアハウス、分散ファイルシステム | 倉庫係:データを素早く出し入れ |
💰 EC2 料金オプションの比較
オンデマンド
リザーブド
Savings Plans
スポット
専用ホスト
| オプション | 特徴 | 割引率 | 適したケース |
|---|---|---|---|
| オンデマンド | 短期・不定期。契約・前払いなし | 0% | 開発/テスト、本番前の検証 |
| リザーブド | 1〜3 年契約。使用タイプ固定 | 最大75% | 安定稼働が前提の本番環境 |
| Savings Plans | 時間単位でコミット。種類柔軟 | 最大72% | 汎用的なコスト最適化 |
| スポット | 余剰リソース活用。中断あり | 最大90% | バッチ処理、非緊急処理 |
| 専用ホスト | 物理サーバーを専有 | — | ライセンス制約、セキュリティ要件 |
🧠 選び方のヒント
-
コスト重視:Savings Plans > リザーブド > スポット(中断可なら)
-
安定性重視:リザーブド or オンデマンド
-
柔軟性重視:オンデマンド or コンバーティブルリザーブド
-
規制対応:専用ホスト
☁️ EC2 Auto Scaling とスケーラビリティ(拡張性)の理解
🧠 基本概念:スケーラビリティと伸縮性
-
スケーラビリティ(Scalability):
-
システムがリ ソースを自動で増減できる能力
-
「必要なときだけ使い、不要なときは削減」
-
-
オンプレミスの課題:
-
ピークに合わせて購入 → 大半の時間アイドル状態
-
平均使用量に合わせて購入 → ピークで対応不可
-
-
AWS の解決策:
-
実際の需要に応じてリソースを自動調整
-
ビジネスと財務の両面にメリットあり
-
🏪 コーヒーショップの例(比喩)
| 登場人物/役割 | EC2の構成要素 | 説明 |
|---|---|---|
| 生出さん | フロントエンドの EC2 インスタンス | 顧客の注文を受ける係(スケールアウト対象) |
| ドリンク係 | バックエンドの EC2 インスタンス | 処理能力が高いが冗長化必要 |
| レジの列 | トラフィックの増加 | 顧客の増減に応じてリソースの調整が必要 |